/* Copyright (C) 2005, 2006 by Daniel Gheorghian
 All rights reserved
 
 Use and distribute freely, except: don't remove my name from the source or documentation 
 (don't take credit for my work), mark your changes (don't get me blamed for your possible bugs),
 don't alter or remove this notice.
 
 No warrantee of any kind, express or implied, is included with this software; use at your
 own risk, responsibility for damages (if any) to anyone resulting from the use of this
 software rests entirely with the user.
 
 Send bug reports, bug fixes, enhancements, requests, flames, etc., and I'll try to keep 
 a version up to date.  I can be reached at: daniel.gheorghian@gmail.com
*/
package com.ds.theme;

import java.awt.*;

public class LightOrangeColorTheme implements ColorTheme
{
	private Paint backgoundPaint = null;
	private Paint darkerBackgoundPaint = null;
	private Paint brighterBackgroundPaint = null;
	private Paint backgroundSelectedPaint = null;
	private Paint foregroundPaint = null;
	private Paint foregroundSelectedPaint = null;
	private Paint foregroundDisabledPaint = null;
	private Color backgroundColor1 = new Color( 250, 189, 96 );
	private Color backgroundColor2 = new Color( 240, 226, 161 );

	public LightOrangeColorTheme()
	{
		this( new Dimension() );
	}

	public LightOrangeColorTheme( Dimension dim )
	{
		update( dim );

		this.foregroundPaint = new Color( 77, 77, 77 );
		this.backgroundSelectedPaint = this.backgoundPaint;
		this.foregroundSelectedPaint = Color.BLACK;
		this.foregroundDisabledPaint = new Color( 185, 185, 185 );
	}

	public void update(Dimension dim)
	{
		this.backgoundPaint = new GradientPaint( dim.width / 2, 0, backgroundColor1,
		                                         dim.width / 2, dim.height, backgroundColor2 );

		this.darkerBackgoundPaint = new GradientPaint( dim.width / 2, 0, backgroundColor1.darker(), dim.width / 2,
		                                               dim.height, backgroundColor2.darker(), false );

		this.brighterBackgroundPaint = new GradientPaint( dim.width / 2, 0, backgroundColor1.brighter(), dim.width / 2,
		                                                  dim.height, backgroundColor2.brighter(), false );
	}

	public Paint darkerBackgroundPaint()
	{
		return darkerBackgoundPaint;
	}

	public Paint brighterBackgroundPaint()
	{
		return brighterBackgroundPaint;
	}

	public Paint getBackgroundPaint()
	{
		return backgoundPaint;
	}

	public Paint getForegroundPaint()
	{
		return foregroundPaint;
	}

	public Paint getBackgroundSelectedPaint()
	{
		return backgroundSelectedPaint;
	}

	public Paint getForegroundSelectedPaint()
	{
		return foregroundSelectedPaint;
	}

	public Paint getForegroundDisabledPaint()
	{
		return foregroundDisabledPaint;
	}
}
